/**
 * 
 */
package model.session;

/**
 * <p>
 * A session block is a element of a chain of event that append in a session.
 * </p>
 * <p>
 * It possess a status and a first block. This first characterizes a session, usually it is a
 * {@link CNFUse}
 * </p>
 * 
 * @author GRONOWSKI Stephane svan001@aol.com
 * 
 * 
 * 
 *         igsat 2010
 * 
 */
public class SessionBlock {

	protected SessionBlock	first;

	/**
	 * create a session block with the first block of the session.
	 * 
	 * @param first
	 *            the first block of the session
	 */
	public SessionBlock(SessionBlock first) {
		// TODO Auto-generated constructor stub
		if (first == null)
			throw new IllegalArgumentException();

		this.first = first;
	}

	/**
	 * create a session block using for first itself.
	 */
	public SessionBlock() {
		first = this;
	}

	/**
	 * @return the first block.
	 */
	public SessionBlock getFirst() {
		return first;
	}

	/**
	 * Set the first block.
	 * 
	 * @param first
	 *            the first to set
	 */
	public void setFirst(SessionBlock first) {
		this.first = first;
	}

}
